import {
    $request
} from '../../utils/request'
import {
    $uploadFile
} from '../../utils/upload'
export const getuploadFile = ((content, images) => {
    // 先构造一下params
    const params = {}
    params.url = 'http://127.0.0.1:8080/api/publishpost',
        params.data = {
            content: content
        },
        params.filePath = images
    return new Promise((resolve, reject) => {
        $uploadFile(params).then((res) => {
            console.log("apis界面下的上传请求发送成功", res);
            resolve(res)

            wx.showToast({
                title: '发布成功！',
            })
        }).catch((err) => {
            console.log("apis界面下的上传请求发送失败", err);
            reject(err)
        })
    })
})

// 发布帖子
export const getPublishPost = ((content) => {
    return new Promise((resolve, reject) => {
        $request({
            url: 'publishpost',
            method: 'POST',
            data: {
                content: content
            }
        }).then((response) => {
            console.log("apis界面的发布帖子成功", response);
            resolve(response)
        }).catch((error) => {
            console.log("apis界面的发布帖子失败", error);
            reject(error)
        })
    })
})


export const getPublishPostImages = ((content, images) => {
    return new Promise((resolve, reject) => {

        // 此时发布帖子分为两步，第一步首先发布文字版的帖子，第二步上传图片
    // 第一步，发布帖子，并拿到帖子的id
    getPublishPost(content).then((res) => {
        console.log("此时apis界面中的帖子发布成功", res);
        if (res.statusCode == 200) {
            const postID = res.data
            // 调用接口上传图片
            for (let i = 0; i < images.length; i++) {
                const params = {
                    filePath:images[i],
                    url:'publishpostimg',
                    data:{
                        postID:postID
                    }
                }
                $uploadFile(params).then((response) => {
                    console.log("apis界面中的文件上传成功", response);
                }).catch((error) =>{
                    console.log("apis界面中的文件上传失败", error);
                })

            }
        }
        resolve(res)
    }).catch((err) => {
        console.log("此时js界面中的帖子发布失败", err);
        reject(err)
    })

    })
    
})